package com.wanglei.ssm.utils;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 时间工具类
 *
 * @author wl
 */
public class DateUtils {
    /**
     * 默认时间格式为yyyy-MM-dd HH:mm:ss
     */
    private static final String DEFAULT_PATTERN = "yyyy-MM-dd HH:mm:ss";

    /**
     * 日期转字符串
     *
     * @param date 时间对象
     * @return 格式化后的时间字符串
     */
    public static String dateToString(Date date) {
        return new SimpleDateFormat(DEFAULT_PATTERN).format(date);
    }

    /**
     * 日期转指定格式的时间字符串
     *
     * @param date 时间对象
     * @return 格式化后的时间字符串
     */
    public static String dateToString(Date date, String pattern) {
        return new SimpleDateFormat(pattern).format(date);
    }

    /**
     * 字符串转时间对象
     *
     * @param dateStr 时间字符串
     * @return 时间对象
     * @throws ParseException 字符串解析异常
     */
    public static Date stringToDate(String dateStr) throws ParseException {
        return new SimpleDateFormat(DEFAULT_PATTERN).parse(dateStr);
    }

    /**
     * 传入指定格式，根据该格式解析字符串并将其转化成时间对象
     *
     * @param dateStr 时间字符串
     * @param pattern 解析格式
     * @return 时间对象
     * @throws ParseException 字符串解析异常
     */
    public static Date stringToDate(String dateStr, String pattern) throws ParseException {
        return new SimpleDateFormat(pattern).parse(dateStr);
    }

}
